home *** CD-ROM | disk | FTP | other *** search
- This is version 1.9.0 of the BLT library. It is an extension to
- Tk toolkit (it requires no patching of the Tcl or Tk libraries).
-
- This library works with the following releases of Tcl/Tk ONLY. I, Jeffrey
- Hobbs jhobbs@cs.uoregon.edu, have patched BLT to reach this state with the
- help of others input, notably Richard Ball, Sven Delmas, and George Howlett.
- If you have any problems, please email me at jhobbs@cs.uoregon.edu (may be
- invalid after summer 1996). Home sites (for newest versions, contact info):
-
- http://www.cs.uoregon.edu/~jhobbs/work/
- ftp://ftp.cs.uoregon.edu/pub/jhobbs/
-
- This version of BLT works with the following tcl/tk versions ONLY:
-
- tcl 7.4 / tk 4.0 (any patchlevel)
- tcl 7.5a2 / tk4.1a2
-
- Make sure to that after running 'configure', it finds the right combination
- of libraries and include files (in other words, don't use 4.0 includes with
- 4.1 libraries). 'make sharedlib' makes a shared library on systems that it
- understands.
-
- The BLT toolkit contains the following widgets/commands:
-
- 1) Drag-n-drop command: blt_drag&drop
- Updated version of Michael McLennan's drag and drop command
- (it's still maintained by Michael).
-
- 2) Hypertext widget: blt_htext
- Allows text and Tk widgets to combined in a single scroll-able
- window.
-
- 3) Busy window: blt_busy
- For handling user-interaction when the application is "busy".
- Manages an invisible "busy" window which prevents further
- user device (keyboard, mouse, button, etc.) interactions.
- Also provides a different cursor which supersedes application
- cursors.
-
- 4) Bitmap command: blt_bitmap
- Lets you read and write bitmaps from Tcl. Can define X bitmaps
- and create bitmaps from text strings. Other options query any
- loaded X bitmap.
-
- 5) Background "exec" command: blt_bgexec
- Like "exec ... &", but collects the output of the detached
- UNIX subprocesses and sets a Tcl variable upon their completion.
- Can be used with "tkwait variable" to handle application's
- expose events, etc. while waiting for subprocesses to finish.
-
- 6) Table geometry manager: blt_table
- Specify window placements as table row,column positions. Also
- has many options for placing constraints on window resizes.
-
- 7) Barchart widget: blt_barchart
-
- 8) XY graph widget: blt_graph
-
- 9) Window option command: blt_win
- Lets you raise, lower, map, or, unmap any window.
-
- 10) Watch commands: blt_watch
- Lets you specify Tcl procedures to be run before and/or
- after every Tcl command. May be used for logging,
- tracing, profiling, or debugging or Tcl code.
-
- 11) Simple command trace: blt_debug
- Simply prints out each Tcl command before it's executed.
-
- 12) Cutbuffer and bell commands: blt_cutbuffer, blt_bell
- The commands are derived from the "bellcut" extensions and are
- provided as a convenience. Credit should go to the author(s)
- (I can't remember who they are. Sorry) for this work.
-
- See ChangeLog for further changes updates.
-
- ---------
-
- Changes since BLT-1.7 (Done by a collective group):
-
- - Updated for Tcl 7.4, Tk 4.0 internally. Several of the demos
- still need updating, but the code works...
-
- ---------
-
- Changes since BLT-1.6:
-
- 1. New feature in "blt_graph", "blt_barchart":
-
- - New "-ticklength" option specifies length of ticks/subticks.
- Ticks are no longer scaled with the dimensions of the window.
- (POTENTIAL INCOMPATIBILITY).
-
- 2. New feature in "blt_bgexec":
-
- - New "-statusvar" option sets variable with exit status of the
- last command. Now waits for subprocesses to finish even if stdout
- closes prematurely or output is redirected.
-
- 3. New application "applications/extloader":
-
- - Creates an vanilla "wish" with an "extension" command from
- dynamically loading and initializing extensions. Try it out
- using BLT. This command reflects the proposal made last year
- for an extension loader. It is certainly not the last word on
- extension loading. I any welcome comments or suggestions to
- improve this or any other loader.
-
- It's been tested on HP-UX, SunOS 4.x, and SunOS 5.x. It should
- also work on ISIX 5.x, OSF1.
-
- 4. Bug fixes: See the file "ChangeLog" for details. Thanks to all
- those who've sent me their reports and fixes.
-
- - Many bug fixes in blt_graph/blt_barchart (mostly bugs introduced
- with BLT-1.6).
-
- - "blt_bitmap define" was freeing memory twice if bitmap already
- existed.
-
- ---------
-
- Changes since BLT-1.5:
-
- 1. New features in "blt_graph":
-
- - New "-bufferelements" options caches elements in a pixmap. Tags,
- legend and active elements are now drawn after normal elements
- (POTENTIAL INCOMPATIBILITY).
-
- - Legend creates extra columns of element labels as needed. Legend
- no longer runs off the graph window.
-
- - New legend commands to locate an element in the legend window
- coordinates, set active foreground/background colors for legend entries.
- Legend background must be now specified (POTENTIAL INCOMPATIBILITY).
-
- - New "element deactivate" command. "element activate" command no longer
- supports "all" or "none" as index arguments (POTENTIAL INCOMPATIBILITY).
- If no indices are present, all points are active. Use
- "element deactivate" instead of "none".
-
- - New "-borderwidth" option to control width of the border around line
- symbols (e.g. circle, square, etc). If borderwidth is zero, no border
- is drawn. Lines connecting symbols and the symbol's area are drawn
- with the foreground color. Only the border is drawn in the background
- color.
-
- 2. Misc changes
-
- - "blt_graph" and "blt_barchart": Option database names prefixed
- by "elem" instead of "lineElem" or "barElem". Class names now
- have no prefix (formerly "Elem"). (POTENTIAL INCOMPATIBILITY).
-
- - "blt_barchart": -stipple option for blt_barchart now can take a
- list of bitmap names. This lets you specify different stipples for
- each bar segment.
-
- - "blt_table": configure command now can take more than one slave
- window name. This lets you set the same options for a set of
- slave windows.
-
- - "blt_bgexec": output, error, and update variables can be elements
- of an array.
-
- 3. Bug fixes: See the file "ChangeLog" for details. Thanks to all
- those who've sent me their reports and fixes.
-
- ---------
-
- Changes since BLT-1.4:
-
- 1. New "-descending" axis option for "blt_graph" and "blt_barchart".
- Allows axis to be ordered in decreasing values.
-
- 2. New "-invertxy" graph option for "blt_barchart" and "blt_graph".
- Inverts the x and y axes (displays on x-axis on left, y-axis
- on bottom of plot).
-
- 3. Bug fixes: See the file "ChangeLog" for details. Thanks to all
- those who've sent me their reports and fixes.
-
- ---------
-
- Changes since BLT-1.3:
-
- 1. Axis not re-scaling when changing log/linear scale.
-
- 2. New command: "blt_watch" arranges for Tcl procedures to be
- called before and/or after the execution of every Tcl command.
- This command may be used in the logging, profiling, or tracing of
- Tcl code.
-
- 3. Bug fixes: See the file "ChangeLog" for details. Thanks to all
- those who've sent me their reports and fixes.
-
- ---------
-
- Changes since BLT-1.2:
-
- 1. Fixed manual scaling bug (seen in ./demos/graph2)
-
- 2. New feature: C interface to reset "blt_graph" element data.
-
- 3. Bug fixes: See the file "ChangeLog" for details. Again, thanks
- to all those who've sent me reports.
-
- ---------
-
- Changes since BLT-1.1:
-
- 1. Fixed bug (coredump) in "blt_bgexec" command introduced
- last release.
-
- 2. Fixed bug (error) in "blt_graph" and "blt_barchart" commands
- introduced in last release. Bug doesn't allow axis -min, -max options
- to be reset to autoscale.
-
- 3. Fixed bug in Kosherdill installation.
-
- 4. New feature in "blt_graph" and "blt_barchart".
- Added alternate x and y axes (x2, y2).
- Moved axis title options to their respective axis commands
- .graph configure -xtitle "X Axis Title"
- becomes
- .graph xaxis configure -title "X Axis Title"
-
- ---------
-
- Changes since BLT-1.0:
-
- 1. Many changes to configuration and install files. Hopefully this
- is an improvement.
-
- 2. New options in "blt_graph" to detect closest point and highlight
- single element data points.
-
- 3. New option in "blt_bitmap" command lets you create bitmaps of rotated
- text strings.
-
- 4. Restructured BLT library to facilitate loading as a shared object.
-
- 5. Lots of bug fixes: See the file "ChangeLog" for details. Again, thanks
- to all those who've sent me reports.
-
- ---------
-
- Changes since BLT-1.0b2:
-
- 1. First BLT application.
- Kosher Dill
- ( KOmprehensive Storage HandlER / Disk ILLustrator )
-
- ---------------------------------------------------------------
- Copyright (c) 1993 AT&T Bell Laboratories
- Michael J. McLennan (michael.mclennan@att.com)
- ---------------------------------------------------------------
-
- Kosher Dill is a simple utility for managing disk usage. It
- provides a graphical representation of the system "du" command,
- along with drag&drop facilities for exploring, compressing
- and removing files.
-
- It can be found in the new "blt-1.0/applications" directory.
-
- 2. Drag-and-drop facility "blt_drag&drop". Michael McLennan has updated
- and added his drag-and-drop command.
-
- 3. Shared library target (for supported systems): I've been able to test
- this only on SunOS 4.x, SunOS 5.x, and HP-UX 9.01 systems.
-
- 4. Add -updatevar flag to "blt_bgexec": You can now get partial updates
- of output as the program is running. See the script "demos/bgexec".
-
- 5. Library directory: This directory contains the drag-n-drop protocols
- and the PostScript prolog for graph and barchart. The path can be
- set in the following ways:
-
- - compiled into the library.
- - set by the environment variable "BLT_LIBRARY"
- - set by the Tcl variable "blt_library"
-
- 6. Lots of bug fixes: See the file "ChangeLog" for details. Thanks to
- all those who've sent me reports. I really appreciate it.
-
- ---------
-
- How to get and test BLT:
-
- The following describes how to get and install the BLT library.
-
- 0. FTP the distribution from ftp.cs.uoregon.edu
-
- ftp ftp.cs.uoregon.edu
- cd pub/jhobbs/
- binary
- get blt-1.8.tar.gz
- bye
-
- 1. Uncompress and untar the distribution file.
-
- zcat blt-1.8.tar.gz | tar -xvf -
-
-
- This will create a directory "blt-1.8" with the following
- subdirectories:
-
- blt-1.8
- ______________|_________________
- | | | | |
- applications demos library man src
- |
- shared
-
- 2. Run ./configure
-
- Go into the "blt-1.8" directory
-
- cd blt-1.8
-
- and run the auto-configuration script "./configure"
-
- ./configure
-
- * If you want to use gcc, it's "./configure -with-gcc"
-
- ./configure -with-gcc
-
- * By default, the demo program, libBLT.a, the library files, and
- manual pages will be installed in "/usr/local/blt". You can
- change this by giving the -prefix option to ./configure.
-
- ./configure -prefix=/depot/stuff/blt
-
- You may be queried for the location of the Tcl and Tk libraries, if
- "configure" can't find them in the standard locations.
-
- The configure script creates an include file "src/bltConfig.h".
- It will also generate new Makefiles from their respective templates
- (Makefile.in).
-
- Makefile.in ==> Makefile
- src/Makefile.in ==> src/Makefile
- src/shared/Makefile.in ==> src/shared/Makefile
- man/Makefile.in ==> man/Makefile
- library/Makefile.in ==> library/Makefile
-
- If "configure" can't find something (e.g. it can't find the X libraries),
- edit the file "config.status" and run it.
-
- ./config.status
-
- Otherwise, you'll have to edit the Makefiles files by hand.
-
-
- 3. Compile the demonstration program "blt_wish".
-
- make
-
-
- 4. Test by running the demos.
-
- Go into the demos directory
-
- cd demos
-
- and run the test scripts.
-
- ./graph
-
- If your system doesn't support "#!" in shell scripts, then it's
-
- ../blt_wish -f ./graph
-
-
- 5. Installing BLT
-
- The following directories will be created when BLT is installed.
- By default, the top directory is /usr/local/blt.
-
- _____________|__________
- | | | |
- bin lib library man
-
- You can change the top directory by supplying the -prefix option to
- ./configure.
-
- * If you don't install BLT, you will need to set the BLT_LIBRARY
- environment variable or the Tcl variable "blt_library" in your
- scripts. Otherwise, you may not be able generate PostScript
- output for graphs and barcharts, or use the drag&drop facility
- properly.
-
-
- 6. BLT Applications
-
- In the "blt-1.8/applications" directory, there is the first
- application called "kosherdill". It has its own README and
- configure script.
-
- 7. Creating a shared library.
-
- This is currently available (and tested) on the following
- systems:
-
- SunOS 4.x
- SunOS 5.x
- HP-UX 9.01
-
- From the "blt-1.8" directory:
-
- make sharedlib
-
- This will create a shared library in the directory src/shared.
-
-
- 8. Adding BLT to your program.
-
- Add the following lines to your program's Tcl_AppInit routine
-
- if (Blt_Init(interp) != TCL_OK) {
- return TCL_ERROR;
- }
-
- Link with libBLT.a
-
- and that's all there's to it.
-
- 9. Send bugs reports, correspondence, etc. to
-
- george.howlett@att.com
-
-
-